package com.tangguangdi.base.common.db;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 字段类型
 */
@Getter
@AllArgsConstructor
public enum FieldType {
    /**
     * byte
     */
    BASE_BYTE("byte", (String)null),
    /**
     * short
     */
    BASE_SHORT("short", (String)null),
    /**
     * char
     */
    BASE_CHAR("char", (String)null),
    /**
     * int
     */
    BASE_INT("int", (String)null),
    /**
     * long
     */
    BASE_LONG("long", (String)null),
    /**
     * float
     */
    BASE_FLOAT("float", (String)null),
    /**
     * double
     */
    BASE_DOUBLE("double", (String)null),
    /**
     * boolean
     */
    BASE_BOOLEAN("boolean", (String)null),
    /**
     * Byte
     */
    BYTE("Byte", (String)null),
    /**
     * Short
     */
    SHORT("Short", (String)null),
    /**
     * Character
     */
    CHARACTER("Character", (String)null),
    /**
     * Integer
     */
    INTEGER("Integer", (String)null),
    /**
     * Long
     */
    LONG("Long", (String)null),
    /**
     * Float
     */
    FLOAT("Float", (String)null),
    /**
     * Double
     */
    DOUBLE("Double", (String)null),
    /**
     * Boolean
     */
    BOOLEAN("Boolean", (String)null),
    /**
     * String
     */
    STRING("String", (String)null),
    /**
     * Date
     */
    DATE_SQL("Date", "java.sql.Date"),
    /**
     * Time
     */
    TIME("Time", "java.sql.Time"),
    /**
     * Timestamp
     */
    TIMESTAMP("Timestamp", "java.sql.Timestamp"),
    /**
     * Blob
     */
    BLOB("Blob", "java.sql.Blob"),
    /**
     * Clob
     */
    CLOB("Clob", "java.sql.Clob"),
    /**
     * LocalDate
     */
    LOCAL_DATE("LocalDate", "java.time.LocalDate"),
    /**
     * LocalTime
     */
    LOCAL_TIME("LocalTime", "java.time.LocalTime"),
    /**
     * Year
     */
    YEAR("Year", "java.time.Year"),
    /**
     * YearMonth
     */
    YEAR_MONTH("YearMonth", "java.time.YearMonth"),
    /**
     * LocalDateTime
     */
    LOCAL_DATE_TIME("LocalDateTime", "java.time.LocalDateTime"),
    /**
     * Instant
     */
    INSTANT("Instant", "java.time.Instant"),
    /**
     * byte[]
     */
    BYTE_ARRAY("byte[]", (String)null),
    /**
     * Object
     */
    OBJECT("Object", (String)null),
    /**
     * Date
     */
    DATE("Date", "java.util.Date"),
    /**
     * BigInteger
     */
    BIG_INTEGER("BigInteger", "java.math.BigInteger"),
    /**
     * BigDecimal
     */
    BIG_DECIMAL("BigDecimal", "java.math.BigDecimal");


    private String code;
    private String pkg;
}
